package modelo.AlgoHero;


public abstract class  Duracion {

	private static Figura figura;
	private static Integer cantidadDeFiguras;
	private static Integer cantidadDeSemiCorcheas;
	
	
	/**
	 * Constructor
	 * @param figura			Figura en que se expresa la duracion
	 * @param cantidadDeFiguras Cantidad de figuras de la duracion
	 */
	
	public  static void setDuracion (Figura figura, Integer cantidadDeFiguras){
		
		Duracion.figura = figura;
		Duracion.cantidadDeFiguras = cantidadDeFiguras;
		Duracion.cantidadDeSemiCorcheas = calculaEquivalenciaEnSemiCorcheas(Duracion.figura, Duracion.cantidadDeFiguras);
		
	}
	
	/**
	 * Metodo privado utilzado para calcular la duracion expresada en semi corcheas
	 * @param figura			Figura en la cual esta expresada la duracion
	 * @param cantidadDeFiguras Cantidad de figuras de la duracion
	 * @return					Cantidad de semicorcheas de la duracion
	 */
	
	private static Integer calculaEquivalenciaEnSemiCorcheas (Figura figura, Integer cantidadDeFiguras){
		
		Integer resultado = 0;
		
		resultado = figura.getDuracion()* cantidadDeFiguras;
				
		return resultado;
		
	}
	
	public static Integer getDuracion (){
		
		return Duracion.cantidadDeSemiCorcheas;
		
		
	}

}
